/*
    SUSAN® - Sole of Unix Save ANything

   Copyright (C) 2018-2020 Hechzh Property

   
*/
#ifndef BAREOS_STORED_ACQUIRE_H_
#define BAREOS_STORED_ACQUIRE_H_

namespace storagedaemon {

struct BlockSizeBoundaries;

DeviceControlRecord* AcquireDeviceForAppend(DeviceControlRecord* dcr);
bool AcquireDeviceForRead(DeviceControlRecord* dcr);
bool ReleaseDevice(DeviceControlRecord* dcr);
bool CleanDevice(DeviceControlRecord* dcr);
void SetupNewDcrDevice(JobControlRecord* jcr,
                       DeviceControlRecord* dcr,
                       Device* dev,
                       BlockSizeBoundaries* blocksizes);
void FreeDeviceControlRecord(DeviceControlRecord* dcr);

} /* namespace storagedaemon */

#endif  // BAREOS_STORED_ACQUIRE_H_
